package com.cy.pj.sys.Dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import com.cy.pj.common.vo.Node;
import com.cy.pj.sys.pojo.SysMenu;

@Mapper
public interface SysMenuDao {
	List<String> findPermissions(
			@Param("menuIds")
			List<Integer> menuIds);
	/***
	 * 查询所有菜单信息以及菜单对应的上级菜单名称
	 * @return
	 */
	List<Map<String,Object>> findObjects();
	/***
	 * 基于菜单id获取菜单对应的子菜单
	 * @param id
	 * @return
	 */
	@Select("select count(*) from sys_menus where parentId=#{id}")
	int getChildCount(Integer id);
	
	@Delete("delete from sys_menus where id=#{id}")
	int deleteObject(Integer id);
	/**
	 * 获取所有菜单的菜单id,name,note
	 * @return
	 */
	
	List<Node> findZtreeMenuNodes();
	
	int insertObject(SysMenu entity);
	/***
	 * 基于多个菜单id查找权限表示
	 * @param menuIds
	 * @return
	 */
	List<String> findPermissions(
			@Param("menuIds")
			Integer[] menuIds);
	
}
